

# 生成器函数

def myyield():
    '''此函数是生成器函数。'''
    print('这是第1行打印')
    yield 2
    print('这是第2行打印')
    yield 3
    print('这是第3行打印')

r = myyield()
print(r)
for x in r:
    print('x:', x)

r2 = myyield()
it = iter(r2)  # 获取迭代器
print(next(it))  # 此时 生成器的函数才开始执行
print(next(it))  # 此时 生成器的函数才开始执行
print(next(it))  # 触发StopIteration异常

